import gnu.io.CommPortIdentifier;
import gnu.io.SerialPort;

import java.io.IOException;
import java.io.OutputStream;
import java.io.InputStream;
import java.util.Enumeration;
import java.util.Scanner;

import Arduino.Arduino;


public class connect {
//Variables de conexion.
	 private int valor1,valor2;
	 public String s="";
	private OutputStream output = null;
	private InputStream input = null;
	SerialPort serialPort;
	private final String PUERTO = "COM12";//puerto que vamos a abrir
	private static final int TIMEOUT=2000;//milisegundo
	private static final int DATA_RATE=9600;
	public void inicializarConexion(){
		CommPortIdentifier puertoID=null;
		Enumeration puertoEnum = CommPortIdentifier.getPortIdentifiers();
		while(puertoEnum.hasMoreElements()){
			CommPortIdentifier actualPuertoID = (CommPortIdentifier)puertoEnum.nextElement();
			if(PUERTO.equals(actualPuertoID.getName())){
				puertoID=actualPuertoID;
				break;
			}
			
		}
		if(puertoID==null){
			
			System.out.println("No se encontro puerto");
		}
		try{
			//abrir el puerto ya encontrado
			serialPort = (SerialPort)puertoID.open(this.getClass().getName(), TIMEOUT);
			//inicializar parametros del serial
			serialPort.setSerialPortParams(DATA_RATE,SerialPort.DATABITS_8,SerialPort.STOPBITS_1,SerialPort.PARITY_NONE);
			output = serialPort.getOutputStream();
			input = serialPort.getInputStream();
		}catch(Exception e){
			System.out.println("Error abriendo parametros");
			
			
		}
	}
	//Metodo para enviar datos
	private void enviarDatos(String datos){
		try{
			output.write(datos.getBytes());
			
		}catch(Exception e){
			System.out.println("Error en envio de datos");
			
		}
		
	} 
	//Metodo para recibir datos
	public String recibirDatos() throws IOException {
			//while(0<1){
				//Funcional
				
			        input = serialPort.getInputStream();
			        //while (true) {
			        String s="";
			            while (input.available() > 0) {
			            	
			            				            	
			            	 
			            	
			            	int dato = input.read();
			            	
			            	s=s+(char)dato;
			            	//if(s.length()==2)
			            	//System.out.println(s);
			            	return s;
			            	}
			            
			    }
						
			//}
				
				/*char dato =(char)input.read();
			 char data = dato;
			   if((data=='3')||(data=='1')||(data=='4')||(data=='5'))
			
					System.out.println((char)dato);*/
			   
			 /*  int dato = input.read();
				 int data = dato;
				   if((data==1)||(data==2))
				       System.out.println(data);*/
				
					
				
				
				
			
				
			
			
		
		
	
	public static void main(String[] args) throws IOException {
		
		Scanner scanner = new Scanner(System.in);
		connect con = new connect();
		//con.inicializarConexion();
		/*while(0<1){
			String Nombre=scanner.nextLine();
			if(Nombre.equals("0"))
		con.enviarDatos("3");
			if(Nombre.equals("1"))
				con.enviarDatos("0");
			
		}*/
		//----------------------------------
		
		//con.recibirDatos();
		
	}	
	}



